home *** CD-ROM | disk | FTP | other *** search
- ;/*
- F_Create.rexx LIB Feelin:LIBS/Feelin/Shade.fc 3 10
- QUIT
- ________________________________________________________________________
-
- (03.10) 2003/08/19
-
- [IMP] All gadgets rendering are now buffered (if possible), and not only
- the title bar. The FC_TextDisplay object used by the title bar is no
- longer created on the fly when the title bar need to be drawn, but
- create on FM_Setup. The preparse string are now resolved with preference
- items "FP_Decorator_PreParse" & "FP_Decorator_AltPreParse".
-
- */
-
- #include "Private.h"
-
- struct FeelinBase *FeelinBase;
- struct FeelinClass *GadgetClass;
- ULONG FC_Area_Offset;
- ULONG FC_Gadget_Offset;
-
- ///METHODS
- F_METHOD(void,Gad_New);
- F_METHOD(void,Gad_Setup);
- F_METHOD(void,Gad_Cleanup);
- F_METHOD(void,Gad_Show);
- F_METHOD(void,Gad_Hide);
- F_METHOD(void,Gad_Layout);
- F_METHOD(void,Gad_Draw);
- F_METHOD(void,Gad_HandleEvent);
-
- F_METHOD(void,Shade_New);
- F_METHOD(void,Shade_Get);
- F_METHOD(void,Shade_Setup);
- F_METHOD(void,Shade_Cleanup);
- F_METHOD(void,Shade_Show);
- F_METHOD(void,Shade_Layout);
- F_METHOD(void,Shade_Draw);
- F_METHOD(void,Shade_GoActive);
- F_METHOD(void,Shade_GoInactive);
- //+
-
- ///EXIT
- F_EXIT()
- {
- F_DeleteClass(GadgetClass); GadgetClass = NULL;
- }
- //+
- ///INIT
- F_INIT()
- {
- static struct FeelinMethodEntry Handlers[] =
- {
- (FMethod) Gad_New, NULL, FM_New,
- (FMethod) Gad_Setup, NULL, FM_Setup,
- (FMethod) Gad_Cleanup, NULL, FM_Cleanup,
- (FMethod) Gad_Show, NULL, FM_Show,
- (FMethod) Gad_Hide, NULL, FM_Hide,
- (FMethod) Gad_Draw, NULL, FM_Draw,
- (FMethod) Gad_Layout, NULL, FM_Layout,
- (FMethod) Gad_HandleEvent, NULL, FM_HandleEvent,
-
- NULL
- };
-
- static struct TagItem Tags[] =
- {
- FA_Class_Super, (ULONG) FC_Area,
- FA_Class_LODSize, (ULONG) sizeof (struct GAD_LocalObjectData),
- FA_Class_MethodsTable, (ULONG) Handlers,
-
- TAG_DONE
- };
-
- if (GadgetClass = F_CreateClassA(Tags))
- {
- FC_Area_Offset = GadgetClass -> Super -> Offset;
- FC_Gadget_Offset = GadgetClass -> Offset;
-
- return TRUE;
- }
-
- return FALSE;
- }
- //+
- ///QUERY
- F_QUERY()
- {
- FeelinBase = Feelin;
-
- switch (Which)
- {
- case FV_Query_ClassTags:
- {
- static struct FeelinMethodEntry Handlers[] =
- {
- (FMethod) Shade_New, NULL, FM_New,
- (FMethod) Shade_Get, NULL, FM_Get,
-
- (FMethod) Shade_Setup, NULL, FM_Setup,
- (FMethod) Shade_Cleanup, NULL, FM_Cleanup,
- (FMethod) Shade_Show, NULL, FM_Show,
- (FMethod) Shade_Layout, NULL, FM_Layout,
- (FMethod) Shade_Draw, NULL, FM_Draw,
- (FMethod) Shade_GoActive, NULL, FM_GoActive,
- (FMethod) Shade_GoInactive, NULL, FM_GoInactive,
- NULL
- };
-
- static struct TagItem Tags[] =
- {
- FA_Class_Super, (ULONG) FC_Decorator,
- FA_Class_LODSize, (ULONG) sizeof (struct LocalObjectData),
- FA_Class_MethodsTable, (ULONG) Handlers,
-
- FA_Class_Init, (ULONG) FCC_Init,
- FA_Class_Exit, (ULONG) FCC_Exit,
-
- TAG_DONE
- };
-
- return Tags;
- }
- }
- return NULL;
- }
- //+
-